<HTML><HEAD><TITLE>als(++PredSpec)</TITLE>
</HEAD><BODY>[ <A HREF="index.html">Predicate Database and Compiler</A> | <A HREF="../../index.html">Reference Manual</A> | <A HREF="../../fullindex.html">Alphabetic Index</A> ]
<H1>als(++PredSpec)</H1>
Outputs the abstract code for the compiled predicate PredSpec.


<DL>
<DT><EM>PredSpec</EM></DT>
<DD>Atom/Integer or just Atom.
</DD>
</DL>
<H2>Description</H2>
   If PredSpec is a predicate compiled into a sequence of abstract
   instructions, this predicate will list on the current output stream this
   abstract code.  The ECLiPSe abstract machine is a modification of the
   Warren Abstract Machine.

<P>

<H3>Modes and Determinism</H3><UL>
<LI>als(++) is semidet
</UL>
<H3>Modules</H3>
This predicate is sensitive to its module context (tool predicate, see @/2).
<H3>Fail Conditions</H3>
Fails if PredSpec is not a predicate compiled into the WAM
<H3>Exceptions</H3>
<DL>
<DT><EM>(4) instantiation fault </EM>
<DD>PredSpec is not instantiated.
<DT><EM>(5) type error </EM>
<DD>PredSpec is not of the form Atom/Integer or Atom.
<DT><EM>(60) referring to an undefined procedure </EM>
<DD>PredSpec does not exist.
</DL>
<H2>Examples</H2>
<PRE>
Success:
    [eclipse 1]: als(true).

    true/0 :
            Debug_exit
            Retd


    yes.

Error:
    als(X).                  (Error 4).
    als(a/a).                (Error 5).
    als(undef/3).            (Error 60).



</PRE>
<H2>See Also</H2>
<A HREF="../../lib/asm/disasm-2.html">asm : disasm / 2</A>, <A HREF="../../lib/asm/wam-1.html">asm : wam / 1</A>
</BODY></HTML>
